Photographing apparatus, device and method for obtaining images to be used for creating a three-dimensional model

ABSTRACT

This invention introduces, as one aspect, an apparatus for creating three-dimensional object model, comprising photographing means for photographing an object to be modeled for obtaining images to be used for creating the three-dimensional object model, setting means for longitudinally and latitudinally setting a relative position between the object and said photographing means, said setting means being capable of setting the object and said photographing means a plurality of different relative longitudinal and latitudinal positions, and control means for controlling said photographing means and said setting means so that a number of photographs taken from different relative longitudinal positions at a first relative latitudinal position is larger than that taken from different relative longitudinal positions at a second relative latitudinal position, the first relative latitudinal position being closer to a lateral position than the second relative latitudinal position. Accordingly, it becomes possible to minimize the number of photographs for obtaining necessary images to effectively keep a high quality three-dimensional object model, the number of user&#39;s manual operations is reduced, and the total photographing time for creating a three-dimensional object model is significantly decreased.

FIELD OF THE INVENTION

This invention relates to a photographic apparatus, device and methodfor taking images to be used for creating three-dimensional model.Further, this invention typically relates to those taking images fromdifferent longitudinal or latitudinal positions, namely differentlatitudinal angles.

BACKGROUND OF THE INVENTION

Recently, technologies creating a three-dimensional model of an objectfrom a plurality of images taken from a plurality of positions and/ororientations have been developed. In detail, such technologies generallygenerate silhouettes from photographed images, create the geometry ofthe three-dimensional model by using the silhouettes, generate texturesfrom photographed images, and set the generated textures on each polygonof the geometry.

Further, technologies to display such three-dimensional models in anInternet browser and so on and to make necessary rotations so as to makeit possible to observe the models have also been developed. Using thesetechnologies, to make three-dimensional models observable through theinternet browser, it becomes possible for electronic commerce(E-Commerce) customers to observe merchandise as three-dimensionalobjects. Thus, it is expected that such three-dimensional objectmodeling technologies will greatly contribute to the advancement ofE-Commerce businesses.

However, it is essential to obtain not only images of the objectobtained from longitudinally different angles but also images obtainedfrom vertically (latitudinally) different angles, for example bottom andtop images, of the object for creating the three-dimensional modelhaving high quality geometry and high quality texture. Accordingly, itis ordinarily necessary for the user to prepare a studio forphotographing the objects to be three-dimensionally modeled and makevarious arrangements for the photography, for example to repeatedlyphotograph the object many times. Furthermore, the users have to setlighting conditions and appropriate backgrounds for each of thephotographs from various positions and orientations, so as to be able totake textures and silhouettes effectively.

These photographing operations carried out by the users are actuallytime-consuming. Further, considering operations of longitudinallychanging relative positions between a camera and the object to bemodeled and operations of setting a camera at a plurality of differentlatitudinal positions (angles), it necessarily gives users asignificantly large workload in order to create three-dimensional objectmodels.

In addition to these, ideal positions for photographing the object aredifferent in dependence on the size of the object. This causes furtherworkload for the user to create two or more three-dimensional objectmodels having different sizes. Namely, the users have to manually changesetting of the camera and the object for each object. Accordingly, ithas been very difficult to effectively create many three-dimensionalobject models.

By not only photographing lateral images but also top and bottom imagesof the object, it would be possible to create a three-dimensional modelobservable from all orientations. However, to do so, it would benecessary for a user to invert the object, since the bottom of theobject sitting on the object-setting surface is invisible. Inverting theobject would also cause another adjustment between the image of thebottom and other pre-photographed images to be necessary since focallengths for photographing the bottom is normally slightly different fromones for photographing other images. A user would have to adjust size ofthese images by using computer programs increasing workload of the user.

Accordingly, though such technologies are very useful and can contributeindustrial progress, users may be restricted as ones who have somephotographing skill and users need significant time to photograph theobject for creating a three-dimensional object model. In this respect,these technologies have something to be improved.

SUMMARY OF THE INVENTION

This invention has been made to improve a three-dimensional modelcreating technology.

Objects of this invention are to provide an apparatus and method forphotographing the images that are necessary for creating a high qualitythree-dimensional object model while minimising the number ofphotographs and to introduce a method for photographing necessaryimages.

To accomplish the above objects, this invention introduces, as oneaspect, an apparatus for creating three-dimensional object model,comprising photographing means for photographing an object to be modeledfor obtaining images to be used for creating the three-dimensionalobject model, setting means for longitudinally and latitudinally settinga relative position between the object and said photographing means,said setting means being capable of setting the object and saidphotographing means a plurality of different relative longitudinal andlatitudinal positions, and control means for controlling saidphotographing means and said setting means so that a number ofphotographs taken from different relative longitudinal positions at afirst relative latitudinal position is larger than that taken fromdifferent relative longitudinal positions at a second relativelatitudinal position, the first relative latitudinal position beingcloser to a lateral position than the second relative latitudinalposition.

Further, to accomplish the above objects, this invention introduces, asanother aspect, a method for creating three-dimensional object model,comprising steps of photographing an object to be modeled for obtainingimages to be used for creating the three-dimensional object model,longitudinally and latitudinally setting a relative position between theobject and a photographing position at a plurality of different relativelongitudinal and latitudinal positions, and controlling so that a numberof photographs photographed from different relative longitudinalpositions at a first relative latitudinal position is larger than thatphotographed from different relative longitudinal positions at a secondrelative latitudinal position, the first relative latitudinal positionbeing closer to a lateral position than the second relative latitudinalposition.

By using the above-mentioned apparatus or the method, it becomespossible to minimize the number of photographs for obtaining necessaryimages to effectively keep a high quality three-dimensional objectmodel. Accordingly, the number of manual user operations is reduced andthe total photographing time for creating a three-dimensional objectmodel is significantly decreased.

This invention also introduces, as one of preferred embodiments, anapparatus which positions the object on a plane as manner putting theobject so as to be shown in any direction, sets the object and thephotographing means at a third relative latitudinal position where thephotographing means locates below the object and controls so that anumber of photographs taken from different relative longitudinalpositions at the first relative latitudinal position is larger than thattaken from different relative longitudinal positions at the thirdrelative latitudinal position.

By introducing such a preferred embodiment, it becomes possible tocreate a high-quality three-dimensional object model, which is visiblefrom all orientations, with a minimum number of photographs.

Another one of objects of this invention is to introduce an apparatus,which can reduce photographing time for photographing necessary imagesfor creating three-dimensional object model without deterioratingquality of the resultant model.

To accomplish the above objects, this invention introduces, as anotheraspect of this invention, an apparatus for creating three-dimensionalobject model, comprising photographing means for photographing an objectto be modeled for obtaining images to be used for creating thethree-dimensional object model, setting means for longitudinally andlatitudinally setting a relative position between the object and saidphotographing means, said setting means being capable of setting theobject and said photographing means at a plurality of different relativelongitudinal and latitudinal positions, and control means forcontrolling said photographing means and said setting means so that saidphotographing means continuously photographs the object at a firstrelative latitudinal position and a second relative latitudinal positionwhile said setting means sets the object at one of the relativelongitudinal positions.

According to the apparatus above, it becomes possible to reduce time tobe photographed for a three-dimensional object model effectively withoutany deterioration of the resultant three-dimensional object model.

Another one of objects of this invention is to introduce an apparatus,which can reduce a number of photographs for photographing necessaryimages for creating three-dimensional object model irrespective of asize of the object.

To accomplish the above objects, this invention introduces, as anotheraspect of this invention, an apparatus for creating three-dimensionalobject model, comprising photographing means for photographing an objectto be modeled for obtaining images to be used for creating thethree-dimensional object model, setting means for longitudinally andlatitudinally setting a relative position between the object and saidphotographing means, said setting means being capable of setting theobject and said photographing means at a plurality of different relativelongitudinal and latitudinal positions, control means for controllingsaid photographing means and said setting means so that saidphotographing means photographs the object at a plurality of differentrelative longitudinal and latitudinal positions, and selection means forselecting at least one of relative latitudinal positions in accordancewith a size of the object.

Other features or aspects would be clarified by following detailedembodiments with reference with of drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

There will now be described, by way of example only, embodiments of theinvention, with reference to the accompanying drawings, of which:

FIG. 1 shows a mechanical structure of a three-dimensional modelingsystem of one embodiment of the invention.

FIG. 2 shows a cross-section of the three-dimensional modeling systemaccording to this embodiment shown in FIG. 1 as a side view.

FIG. 3 shows a plan view of the system according to this embodimentshown in FIG. 1 and FIG. 2.

FIG. 4 shows a calibration mat, which is used with the system shown inFIG. 1, FIG. 2 and FIG. 3.

FIG. 5 shows a block diagram representing the electrical system of thethree-dimensional modeling system described using FIGS. 1-4.

FIG. 6, FIG. 7 and FIG. 8 are flowcharts representing operations of theapplication program and the three-dimensional object model creatingprogram carried out by the electrical system shown in FIG. 5.

FIG. 9 shows a table of control data stored in CPU shown in FIG. 5 andused for positioning the circular glass shown in FIG. 1.

FIG. 10 shows a table of imaging parameters stored in storage within theapplication program.

FIG. 11 shows a table of focal lengths of the digital cameras shown inFIG. 1.

FIG. 12 shows control data used for turning on and turning off theflashlights (backlights) and fluorescent lights (front lights) shown inFIG. 1.

FIG. 13 shows another embodiment of the system according to thisinvention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 1 shows the mechanical structure of a three-dimensional modelingsystem of one embodiment of the invention. In the apparatus of FIG. 1, aframe 1 supports the other elements of the system and is composed of aplurality of pole members, with base plates connecting lower ends of thepole members, and upper plates connecting upper ends of the polemembers.

A circular glass table 2 is supported on the upper plates of the frame1. The table is rotated by stepping motors and pinch rollers consistingof rubber. These stepping motors and rollers are numbered 3, 4, and 5.The reference 6 indicates a central axis of rotation of the table 2 andthe table rotates around the axis 6. The reference 7 indicates anintersection point of the rotation axis 6 and the table 2. The point 7is, in this embodiment, for obvious reasons, a central point of thecircular table.

Around a circumference of the table 2 are provided rotary encoder marks8 for being detected so as to provide an angle of rotation of the table2. The encoder marks 8 are composed of evaporated aluminum thin filmsrespectively extending in the radial directions of the table 2. A photoreflector 9 located at a position confronting the thin films detectsthem and thus detects the angle of rotation of the table 2.

11, 12, 13, 14 and 15 indicate guide rollers guiding the table 2 so asto rotate around the rotation axis 6. 16 and 17 indicate spaces wherethree-dimensional objects are set. Space 16 is a space for a biggerobject and space 17 is a space for a smaller object.

A digital camera 18 (digital_cam#0), is located on a parallel planehigher than the plane of the table 2 by a predetermined height A. Thereference 19 indicates a horizontal line indicating the plane on whichthe digital camera 18 is located. The digital camera 18 is aimed at thecentral point 7 and an optical axis of the camera makes an angle of 10degrees with the plane of the table 2.

Another digital camera 20 (digital_cam#1), is located on a parallelplane higher than the plane of the table 2 by a predetermined height B.The reference 21 indicates a horizontal line indicating the plane onwhich the digital camera 20 is located. The digital camera 20 is aimedat the central point of the object space 16 and the optical axis of thecamera 20 makes an angle of 10 degrees with the plane of the table 2.

Another digital camera 22 (digital_cam#2), is aimed at the central point7 of the table 2, and the optical axis thereof makes an angle of 45degrees with the plane of the table 2. Another digital camera 23(digital_cam#3) is aimed at the central point 7 of the table 2, and theoptical axis thereof makes at an angle of 80 degrees with the plane ofthe table 2. Another digital camera 24 (digital_cam#4) below the planeof the table 2, is aimed at the central point 7 of the table 2, and theoptical axis thereof makes an angle of 70 degrees with the plane of thetable 2.

A flashlight 25 (flashlight#0,1) for giving backlight is set above theplane of the table 2 opposite the digital cameras 18 and 20. Similarly,another flashlight 26 (flashlight#2) gives backlight. The flashlight 26is set below the plane of the table 2 opposite the digital camera 22 setat an upward angle of 45 degrees towards an object in spaces 16 or 17. Afurther flashlight 27 (flashlight#3) for giving backlight is setopposite the digital camera 23 at an upward angle of 80 degrees towardsan object in spaces 16 or 17. Another flashlight 28 (flashlight#4) forgiving backlight is set opposite the digital camera 24 at a downwardangle of 70 degrees towards an object in spaces 16 or 17.

White-light diffuser plates 29, 30, 31 and 32 are located in front ofeach of the flashlights 25, 26, 27, and 28. For instance, the diffuserplate 29 located at a position illuminated by the flashlight 25 diffuseslight received from the flashlight 25. Similarly, the diffuser plate 30located at a position illuminated by the flashlight 26 diffuses lightreceived from the flashlight 26, the diffuser plate 31 located at aposition illuminated by the flashlight 27 diffuses light received fromthe flashlight 27, and the diffuser plate 32 located at a positionilluminated by the flashlight 28 diffuses light received from theflashlight 28.

A polarizing panel 33 having an approximately same size as the diffuserplate 31 is located thereon. Polarizing filter 34 is located in front ofthe lens of the digital camera 24. The polarizing angle of thepolarizing filter 34 is set at a roughly right angle with the polarizingpanel 33. A white-light diffuser composed of several plates, is locatedso as to surround the object 16 or 17. A plurality of fluorescent lights36 are provided as front light sources and are located behind the lightdiffuser plates 35 so as to illuminate object spaces 16 and 17 withdiffuse light.

FIG. 2 shows a cross-section of the three-dimensional modeling systemaccording to this embodiment shown in FIG. 1 as a side view.

Lines extending from each of the digital cameras 18, 20, 22, 23 and 24represent each of photographing areas thereof in a verticalcross-section. Two solid lines represent an outside border of thephotographing area corresponding to a set predetermined focal length,and a central one-dotted-chained line shows a central axis of thephotographing area.

FIG. 3 shows a plan view of the system according to the embodiment shownin FIG. 1 and FIG. 2. Similar to FIG. 2, two solid lines extended fromthe camera 20 to the table 2 show a photographing area thereof for thepredetermined set focal length.

FIG. 4 shows a calibration mat 37, which is used with the systemaccording to this embodiment. Calibration dots 38 are prepared on acalibration mat 37 to enable the detection of the position of eachdigital camera, the orientation of each digital camera, and the focallength of camera lens of each digital camera. In this embodiment, thereare 32 of the calibration dots 38, four (4) dots being located on eachof eight (8) different radii dividing the mat into eight (8) equalangles. These calibration dots may have different sizes, and preferablyeach set of four dots on a radius has a different pattern of dot sizescompared to the other sets. The calibration mat 37 preferably has thesame calibration dots located at the exactly same position on the backas the dots 38 located on the front of the mat. Preferably, of course,the diameter of the calibration mat 37 is smaller than a diameter of thecircular glass table 2 and the size of the mat 37 is designed so as notto interfere with any of stepping motors and rollers 3, 4, and 5.

FIG. 5 shows a block diagram representing the electrical system of thethree-dimensional modeling system described using FIGS. 1-4 before asone embodiment of the invention. A doted line shown with the reference39 represents a part contained in an ordinary personal computer. Forexample, this personal computer may be composed of ordinary PC platformsconforming to the well-known PC/AT standard.

Central processing unit (CPU) 40 executes an application program.Normally, such an application program is stored in a ROM or a hard diskwithin the computer 39 as an object code. Then, such a program is readout from the storage and written into a memory within the CPU 40 forexecution when the system launched. Since it does not relate to thisinvention directly, detailed descriptions of data flow, control flow andmemory construction within the CPU 40 are omitted in this specification.

A video monitor 41 is connected to the computer 39. A video signal to bedisplayed at the video monitor 41 is output from a video board 42 towhich the monitor 41 is connected. The video board 42 is driven by a setof software programs called a video driver 43. A keyboard 44 is providedby which users of this system manually input data and they may also giveinstructions using a mouse 45. Such input data and instructions areinterpreted in a keyboard and mouse driver 46 composed of a set ofsoftware programs.

All of the digital cameras 18, 19, 20, 21 and 22 are connected to thecomputer 39 by the well-known Universal Serial Bus (USB). The itemreferenced 47 represents USB ports to which the digital cameras 18, 19,20, 21 and 22 are physically connected and their HUB interfaces. A USBdevice manager 48 manages the USB ports and HUB interfaces 47. Alsoprovided are software programs composing a USB driver 49 for controllingthe digital cameras 18, 19, 20, 21 and 22.

An interface box 50 controls communications amongst a STM driver 51, aphoto reflection detector 53, a lighting control unit 55 and thecomputer 39. All of elements 51 to 60 are located in the interface box50 and are described hereafter.

The STM driver 51 drives and controls stepping motors 3, 4, and 5 forrotating the glass circular table 2 in accordance with outputs from adigital to analogue converter (DAC) 52 which converts digital data fromthe computer into an analogue signal to be used in the STM driver 51.The photo reflection detector (PR) 53 detects an output of the photoreflector 9 indicating positions of the encoder marks 8 composed ofevaporated aluminum thin films located a circumference of the table 2.The analogue output of the photo reflection detector 53 is converted todigital data at an analogue to digital converter (ADC) 54.

The lighting control unit 55 has a register that controls flashlights25, 26, 27 and 28, which are used as backlights for the object on thetable. This register is composed of a 5-bit hardware register, the bitsof which control flashlights 25, 26, 27 and 28 and fluorescent lights 36in accordance with control signals provided via a serial interface 61.Such light-control signals are created in accordance with theapplication program and are communicated via the serial interface 61under control of a communication serial port driver (COM port Driver)62.

The control signals for controlling the flashlights are input totwo-input AND gates 57, 58, 59 and 60 respectively. A first port,labelled #0, #1 of the register is connected to one input of the ANDgate 57. A port #2 of the register is connected to one input of the ANDgate 58, a port #3 of the register is connected to one input of the ANDgate 59 and a port #4 of the register is connected to one input of theAND gate 60. The register also has a port #FL for front lights and istherefore connected to the plurality of fluorescent lights 36.

A five-input OR gate 56 has its inputs respectively connected toX-triggers of digital cameras 18, 20, 22, 23 and 24. These X-triggersare provided for synchronizing flash with photographing and are wellknown as “Flash Synchronization” connection points. The other input ofeach of the AND gates 57, 58, 59 and 60 is connected to the output ofthe OR gate 56.

A hard disc unit 63 stores data 64 of texture images and silhouetteimages. A three-dimensional object model creating program is stored in aROM or a hard disc within the computer 39 as an object code and isrepresented as stored at 65. The program is read out from the storageand written into a memory within the CPU 40 for execution when thesystem is launched. The application program and the model creatingprogram (an object modeling engine) communicate through thecommunication (COM) interface. A program for displaying a graphical userinterface (GUI) for the application program stored in CPU 40 isrepresented as stored at 66.

FIG. 6, FIG. 7 and FIG. 8 are flowcharts of operations of theapplication program in CPU 40 and the three-dimensional object modelcreating program in storage 65, as carried out by the CPU 40. FIG. 9shows a table of control data used for positioning the circular glasstable 2, which is stored in CPU 40 within the application program. Thistable shows that the system controls the rotation of the circular table2 to locate it to each of fifteen (15) rotation positions, eachdifferent from a predetermined principal rotation position (#0) by amultiple of 22.5 degrees. Such sixteen (16) positions, including theprincipal rotation position, are determined by data set (rotation_set:#0-#15) and are designated by the application program.

FIG. 10 shows a table of imaging parameters (exp_param_set) stored instorage within the application program. In accordance with the tableshown in FIG. 10, an exposure value (AV) and a shutter speed value (TV)of the digital cameras 18, 20, 22, 23 and 24 are determinedcorresponding to a designated mode (#0: front_texture, or #1:backlight).

FIG. 11 shows a table of focal lengths of the digital cameras 18, 20,22, 23 and 24. These parameters representing focal lengths are alsostored in the storage 40 within the application program. Such actualfocal lengths are determined in response to input data (zoom_pos_set),which represent focal position of zoom lens of the digital cameras.

FIG. 12 shows control data used for turning on and turning off theflashlights 25, 26, 27 and 28 (backlights) and fluorescent lights 36(front light). These control data are also stored in the storage 40within the application program.

Operations of the system shown in FIG. 1 to FIG. 5 are describedreferring to the flowcharts shown in FIG. 6, FIG. 7 and FIG. 8 asfollows. As the subject system in one embodiment of this inventionstarts to operate, the CPU 40 starts the application program and itsoperations from a step #101 shown in FIG. 6.

In the step #101, all previous settings and data used for previousoperations are retrieved and the values are reinitialised. Theintialising process is shown in FIG. 8. A step #201 is a starting stepof the intialising process. In this step #201, all texture image dataand silhouette image data stored in the hard disc unit 63 are cleared.In a following step #202, the CPU 40 resets the USB HUB interfaces 47,the USB device manager 48 and the USB camera driver 49 and confirmscommunications between the digital cameras 18, 20, 22, 23, 24 and theseUSB elements 47, 48 and 49.

In a step #203 following the step #202, the CPU 40 initialises theinterface box 50, the serial interface 61 and the serial port driver 62and confirms communication between the interface box to and theinterface 61.

Finally in a step #204 of the initializing step #101, the circular glasstable 2 is returned to the predetermined principal rotating position inaccordance with the application program. In particular, the CPU 40instructs rotation of the table 2 so as to locate it at the principalrotation position. This instruction is transferred to the interface box50 through the serial interface 61 and the serial port driver 62.Digital data representing the principal rotating position (#0) iscompared with digital data representing the actual rotation position ofthe table 2 and the CPU 40 calculates digital driving data for thestepping motors 3, 4, and 5.

The digital driving data is converted to an analogue signal at thedigital to analogue converter (DAC) 52 and supplied to the STM driver51. The STM driver 51 drives stepping motors 3, 4, 5 in accordance withthe analogue signal. The photo reflection detector (PR) 53 determinesthe actual rotation position of the table 2 by detecting an output ofthe photo reflector 9 reflecting the positions of the encoder marks 8.

The CPU 40 refers the table shown in FIG. 9 to determine a targetedrotation position (angle) of the table 2 and calculates differencebetween the current actual rotating position of the table 2 and thetargeted position. In accordance with the difference, the CPU 40generates digital driving data necessary to drive the stepping motors 3,4, and 5. Accordingly, the stepping motors 3, 4, and 5 are driven by theanalogue driving signal output from the DAC 52 so that the table 2 canbe located at the predetermined principal position.

After the above initialising process, operations are returned to a step#102 shown in the FIG. 6. In this step #102, a user of this systemdecides a size of a three-dimensional object to be photographed andmodeled. In accordance with the application program and the program fordisplaying a graphical user interface (GUI) 66, the CPU 40 displays asize-selecting window on the display of the video monitor 41 via thevideo board. The user utilises the keyboard 44 or the mouse 45 to selectthe size of the object by referring the displayed page. Since the GUIand the selecting page itself are not important to describe thisinvention, detailed descriptions thereof are omitted.

In this embodiment, the user can select the size of the object as“Small” or “Large”. In accordance with this embodiment, it is preferableto select “Small” if the height of the object is smaller than thepredetermined height A which corresponds to the horizontal line 19indicating the plane on which the digital camera 18 is located. On theother hand, if the height of the object is larger than the height A butsmaller than the height B which corresponds to the horizontal line 21representing the plane on which the digital camera 20 is located, it ispreferable for the user to select “Large”.

If the user selects the object size as “Large”, this result isregistered as “obj_size=large” in a step #103. If the user selects theobject size as “Small”, this is registered as “obj_size=small” in a step#104.

Following these steps #103 and #104, the user can select whethercalibration is to be carried out or not. Similar to the step #102, theCPU 40 displays a calibration-selecting page via the GUI on the displayof the video monitor 41 in accordance with the application program. Ifthe user selects to carry out the calibration, the process goes to astep #106. If the user selects not to carry out the calibration, theprocess skips steps #106 to #121 and goes to a step #122.

The steps #106 to #121 for calibration are now described as follows. Inthe step #106, the fluorescent lights 36, the front lights, are turnedon. In detail, in accordance with the application program, the CPU 40instructs the writing of a flag “1” in the front light control bit ofthe register in the lighting control unit 55 of the interface box 50though the serial interface 61 under control of the COM port Driver 62.Accordingly an output of the port of front lights #FL switches to apredetermined level representing “1” and, as shown in the table of FIG.12, the fluorescent lights 36 are turned on.

In a step #107, the CPU 40 displays a window urging the user to put thecalibration mat 37 on the circular glass table 2 via the GUI on thedisplay of the video monitor 41 in accordance with the applicationprogram. Further, in a step #108, the CPU 40 displays a window for theuser to confirm whether the calibration mat 37 has already been put onthe table 2 or not. If the user confirms this, namely ready tocalibrate, the process goes to a step #109.

In a step #109, a loop variable N is set as one of sixteen integers from“0” to “15”. Initially the variable N is set as “0”.

In a step #110, the CPU 40 determines a targeted rotating position(angle) of the table 2 by outputting one of the data sets (rotation_set:#0-#15). The CPU 40 refers the table shown in FIG. 9. Operations of theCPU 40, the stepping motors 3, 4, and 5, photo reflection detector (PR)53, and the DAC 52 to rotate the table 2 to the targeted position aresimilar to the operations described before for the step #101 (#204).

In the step #111, a variable, a software repeat counter C, is set as“0”, “1”, “2”, “3”, or “4”. Initially the variable C is set as “0”.

In a following step #112, the imaging parameters shown in the table ofthe FIG. 10 are set (in accordance with exp_param_set: #0) for frontlight, namely the exposure value (AV) is set to F8.0 and the shutterspeed (TV) is set 1/15 second. These parameters are transferred to oneof the digital cameras 18, 20, 22, 23 and 24. These parameters aretransferred through the USB ports HUB interfaces 47 under control of theUSB device manager 48 and the USB camera driver 49 to the digital camera(digital_cam_#C). Therefore, in this initial stage, the parameters aretransferred to the digital camera 18 (digital_cam_#0).

In a step #113, a parameter representing a focal length is alsotransferred to the digital camera (digital_cam_#C) through the USB portsHUB interfaces 47. In this step #113, the transferred parameter is a set#0 (zoom_pos_set: #0), which represents a wide-end focal length inaccordance with the table of the FIG. 11. Similarly, in this initialstage, this parameter is also transferred to the digital camera 18(digital_cam_#0).

In a step #114, the CPU 40 sends a command to photograph to the digitalcamera (digital_cam_#C) and the digital camera takes an image. Imagedata obtained by the digital camera (digital_cam_#C) is transferred tothe hard disc unit 63 through the USB ports HUB interfaces 47 aftercompressing the image data in conformity with well-known JEPGcompression scheme in a step #115. The name of such image file is, forexample, “img_cam #0. jpg”.

The JEPG compressed image data obtained in the step #114 and stored inthe step #115 is processed and developed and the CPU 40 detects thecalibration dots 38 on a calibration mat 37 in the captured image inaccordance with the application program and three-dimensional objectmodel creating program 65 in a step #116. The CPU 40 processes andanalyses the detected calibration dots and determines a central positionof the calibration mat 37 for creating supposed three-dimensionalcoordinates. In accordance with the supposed three-dimensionalcoordinates, a position and an orientation of the digital camera, and afocal length of the digital camera, the focal length of the camera canbe obtained from the image of the calibration dots 38 by usingperspective information. Detailed methods or processes for obtaining thecentral position of the calibration mat 37, the supposedthree-dimensional coordinates, the position and the orientation of thedigital camera, and the focal length were disclosed in several formerpatent applications, for example, a Japanese Raid-Open Patents numbered00-96374, a Japanese Raid-Open Patents numbered 98-170914 and a UKpatent application numbered 0012812.4, and these methods or processescan be adopted for this step #116. Therefore, in this specification,detailed descriptions of such concrete methods and processes.

In the step #116, if the digital camera 24 (digital_cam_#4) locatedbeneath the table is designated by the variable C, the image of thecalibration dots is obtained from the back of the calibration mat 37 andis processed and analysed for obtaining the position and the orientationof the digital camera 24, and the focal length of the digital camera 24.

After the step #116 and confirming the completion of obtaininginformation for the digital camera (digital_cam_#C) in a step #117, theobtained camera information, including the position, the orientation andthe focal length of the digital camera (digital_cam_#C_#N) are stored inthe hard disc unit 63 as a file named “cal_cam#C” in a step #118.

In a step #119, the variable C designating the digital camera isincremented. In the initial stage, the variable C is changed from “0” to“1”. As easily understood, the steps #111 to #119 are repeated for eachvalue of the variable C from “0” to “4”.

In the step #120, the variable N is incremented and the process goesback to the step #109 from the step #120. (Lines returning from steps#119 to #111 and #120 to #100 are not shown in the FIG. 7 and FIG. 8.)As described before, in step #110, the CPU 40 determines the targetedrotating position (angle) of the table 2, the table 2 is rotated to thetargeted position.

The variable N is incremented one by one and finally comes to “15”. Atthat point all of the photographic processes have been completed, thecircular glass table has been completely rotated around the object andall camera calibration parameters with each camera position at everyrotation angle have been stored by step #118.

Namely, each of the digital cameras 18 (digital_cam#0), 20(digital_cam#1), 22 (digital_cam#2), 23 (digital_cam#3), and 24(digital_cam#4) have been selected in turn and each digital camera hasphotographed the image of the calibration dots 38 in order to obtain thecamera information (the position, the orientation and the focal length)for each of the digital cameras. These information have been stored inthe hard disc unit 63 as files “cal_cam#0”, “cal_cam#1”, “cal_cam#2”,“cal_cam#3”, and “cal_cam#4”.

After these repeated processes in the steps #109 to #120, a value of thevariable N is checked in a step #120 to confirm whether the repeatedprocesses in the steps #109 to #120 are completed for all of the digitalcameras 18, 20, 22, 23, and 24 or not. If it is confirmed, the processgoes to a next step #121. In the step #121, the CPU 40 instructs towrite a flag “0” in the front light control bit of the register in thelighting control unit 55. Accordingly an output of the port of frontlights #FL switches to another predetermined level representing “0” andthe fluorescent lights 36 are turned off in accordance with the table ofthe FIG. 12.

All processes for calibration are completed at the step #121 and theprocess returns to a step #122. In a step #122, the CPU 40 displays awindow for asking the user if an actual modeling process shall bestarted, using the GUI, on the display of the video monitor 41. If theuser instructs by using keyboard 44 or the mouse 45 to start an actualmodeling, the process goes to a step #123.

In the step #123, the CPU 40 turns on the fluorescent lights 36, i.e.the front lights. This process is the same as the step #106. This time,the variable N is set as one of sixteen integers from “0” to “15”.Initially the variable N is set as “0” in a step #124.

In a step #125, the CPU 40 determines a targeted rotation position(angle) of the table 2 by outputting one of the data sets (rotation_set:#0˜#15). The CPU 40 refers to the table shown in FIG. 9. Operations ofthe CPU 40, the stepping motors 3, 4, and 5, photo reflection detector(PR) 53, and the DAC 52 to rotate the table 2 to the targeted positionare similar to the operations described before for the step #101. In astep #126, the CPU 40 consults the selection result of the object size(“Small” or “Large”) made by the user by reading out registeredinformation as “obj_size=large” or “obj_size=small”.

At step #126, if the user selected the object size as “Small”, theprocess goes to a step #127. If the user selected the object size as“Large”, the process goes to a step #128. In the step #127, numbers tobe selectively used as another variable C are set as 0, 2, 3, and 4. Onthe other hand, in the step #128, numbers to be selectively used asanother variable C are set as 1, 2, 3, and 4. This means, the digitalcamera 18 (digital_cam_#0) is used if the object size is small, but thedigital camera 19 (digital_cam_#1) is used if the object size is large.Other digital cameras 20.22, and 24 are commonly used irrespective ofthe size of the object. In an initial stage, this variable C is seteither “0” or “1 in accordance with the size of the object.

Two steps #129 and #130 both check the variable C and the variable N. Ifthe variable C is “2” and the variable N is not a multiple of two, theprocess directly goes from the step #129 to the step #140, skippingsteps #131 to #139. If the variable C is “3” or “4” and the variable Nis not a multiple of four, the process directly goes from the step #130also to the step #140, skipping steps #131 to #139. Otherwise, theprocess goes to a step #129.

This means, if the camera 18 (digital_cam_#0) or 19 (digital_cam_#1) isselected, the steps #131 to #139 (executing the photographing of anobject) are always carried out the photographing process irrespective ofa photographing angle, namely the rotation position of the table 2.Accordingly, each of sixteen (16) images is taken by the camera(digital_cam_#0) 18 or the camera (digital_cam_#1) 20.

On the other hand, if the camera 20 (digital_cam_#2) is selected, thesteps #131 to #139 (executing the photographing) are carried out onlywhen the table 2 is at the principal rotation position or rotationpositions different from the principal rotation position (#0) by each ofmultiple angles of 45 degrees. Accordingly, eight (8) images are takenby the camera 20 (digital_cam_#2). Similarly, if the camera 22(digital_cam_#3) or the camera 24 (digital_cam_#4) is selected, thesteps #131 to #139 (executing the photographing) are carried out onlywhen the table 2 is at the principal rotation position or rotationpositions different from the principal rotating position (#0) by each ofmultiple angles of 90 degrees. Accordingly, only four (4) images aretaken by both the camera 22 (digital_cam_#3) and the camera 24(digital_cam_#4).

The photographing process carried out in the steps #131 to #139 isdescribed hereafter. In the step #131, the CPU 40 instructs to write aflag “1” in one of the backlight control bits of the register in thelighting control unit 55 of the interface box 50 though the serialinterface 61 under control of the COM port Driver 62. For example, forport #0,#1 the corresponding bit of the register is switched to “1”,which switches the output of port #0,#1 to a level representing “1”.Thus (in accordance with the table of FIG. 12) the backlights may beturned on.

In the following step #132, the imaging parameters, shown in the tableof the FIG. 10, are set (in accordance with exp_param_set: #1) forbacklight, namely the exposure value (AV) is set to F8.0 and the shutterspeed (TV) is set to 1/60 second. Then, these parameters are transferredto one of the digital cameras 18, 20, 22, 23 and 24. These parametersare transferred through the USB ports HUB interfaces 47 under control ofthe USB device manager 48 and the USB camera driver 49 to the digitalcamera (digital_cam_#C). Therefore, in this initial stage, theparameters are transferred to the digital camera 18 (digital_cam_#0) orthe digital camera 19 (digital_cam_#1).

In a step #133, a parameter representing a focal length (zoom_pos_set:#X), is also transferred to the digital camera (digital_cam_#C) throughthe USB ports HUB interfaces 47. The focal length “#X” is manuallyselected by the user among six focal lengths (“#0” to “#5”) shown in thetable of the FIG. 11 before the photographing process. The user needs toselect the focal length so that the whole of the object is in aphotographic area of each digital camera.

Of course, this user's selection may be given by using the GUI. Forexample, the CPU 40 displays a focal length selecting page showing sixfocal lengths to be selected, using the GUI, on the display of the videomonitor 41 via the video board 42. The user utilises the keyboard 44 orthe mouse 45 to select one of the focal lengths by referring thedisplayed page.

In a step #134, the CPU 40 sends a command to photograph to the digitalcamera (digital_cam_#C) and the digital camera takes an image. Inresponse to this command to photograph, one of the X-triggers of digitalcameras 18, 20, 22, 23 and 24 is closed and becomes a predeterminedlevel representing “1” for a predetermined period of time. Thus, theoutput of the OR gate 56 becomes a predetermined level representing “1”and one of the AND gates 56, 58, 59 and 60 corresponding to the digitalcamera (digital_cam_#C) outputs a predetermined level representing “1”.Accordingly, one of the flashlights 25, 26, 27, and 28 is turned on andemits flashlight in synchronization with the X-trigger, namely aphotographing operation of the digital camera (digital_cam_#C). Forexample, in the initial stage of this photographing process while thevariable C is 0 or 1, the digital camera 18 (digital_cam_#0) or thedigital camera 20 (digital_cam_#1) photographs the object and theflashlight 25 emits flashlight.

In a step #135, the CPU 40 instructs to write a flag “0” in one of thebacklight control bits of the register in the lighting control unit 55.For example, for port #0,#1 the corresponding bit of the register isswitched to “0”, which switches the output of port #0,#1 to a levelrepresenting “0”. Thus the backlight #0,#1 is disabled.

The image data obtained by the digital camera (digital_cam_#C) in thestep #134 is transferred to the hard disc unit 63 after compressing inconformity with well-known JEPG compression scheme in a step #136. Thename of such image file is “sil_cam#C_#N. jpg”. For instance, if thedigital camera 18 (digital_cam_#0) is used in the initial stage and thephotographing is made while the table 2 locates at the principalrotation position, the name of the image file is “sil_cam#0_(—)#0. jpg”.As seen, the name of the file includes “sil” indicating a silhouetteimage, “#C” indicating the camera used for photographing, and “#N”indicating the rotation position of the table 2.

In a step #137, the imaging parameters shown the FIG. 10 are set (inaccordance with exp_param_set: #0) for front light. Accordingly theexposure value (AV) is set as F8.0 and the shutter speed (TV) is set as1/15 second. Similarly to the step #132, these parameters aretransferred to the digital cameras (digital_cam_#C). In the initialstage, the parameters are transferred to the digital camera 18(digital_cam_#0) or the digital camera 19 (digital_cam_#1).

The digital camera typically uses the same focal length (zoom_pos_set:#X) for both obtaining the silhouette image and the texture image.Therefore, the same focal length (zoom_pos_set: #X) is used also in thecapturing step #133. It shall be noted that the fluorescent lights 36,the front lights, have been continuously turned on since the step #123.

In a step #138, the CPU 40 sends a command to photograph to the digitalcamera (digital_cam_#C) and the digital camera takes a texture image. Inthis moment, since none of the X-triggers of digital cameras 18, 20, 22,23 and 24 is closed and each has a predetermined level representing “0”,none of the flashlights 25, 26, 27, and 28 is turned on and emits anylights.

The image data obtained by the digital camera (digital_cam_#C) is, inthe step #138, transferred to the hard disc unit 63 after compression inconformity with the well-known JEPG compression scheme in a step #139.The name of such image file is, for example, “ima_cam#C_#N.jpg”. Forinstance, if the digital camera 18 (digital_cam_#0) is used in theinitial stage and the photographing is made while the table 2 located atthe principal rotating position, the name of the image file is“ima_cam#0_(—)#0 .jpg”. As seen, the name of the file includes “ima”indicating a texture image, “#C” indicating the camera used forphotographing, and “#N” indicating the rotating position of the table 2.

After all of the steps #131 to #139 executing photographing arecompleted, the variable C is incremented in a step #140. If it wasjudged that the object is small, the process goes back to the step #127from the step #139, (the line for that not being shown in FIG. 7 andFIG. 8). For instance, if the variable C was set as “0” so that thedigital camera 18 (digital_cam_#0) is used during the firstphotographing process, the variable C becomes “2” in the step 127. Onthe other hand, if it was judged that the object is large, the processgoes back to the step #128 from the step #140. For instance, if thevariable C was set as “1” so that the digital camera 20 (digital_cam_#1)is used during the first photographing, the variable C becomes “2” inthe step 128. Thus, whichever the object is small or large, thephotographing process using the digital camera 22 (digital_cam_#2) isnext executed in the steps #131 to #139.

After photographing process using the digital camera 22 (digital_cam_#2)is completed, the variable becomes “3” and the digital camera 23(digital_cam_#3) is selected to be used in the photographing process.Finally, the variable C comes “4” and the digital camera 24(digital_cam_#4) is selected to be used in the photographing process.

Before step #141, all of these photographing processes are executedwhilst the table 2 is located at the principal rotation position. In thestep #141, the variable N is incremented and the process goes back tothe step #124 from the step #140, (the line for that not being shown inFIG. 7 and FIG. 8). As described before, in the step #125, the CPU 40determines the targeted rotation position (angle) of the table 2, thetable 2 is rotated to the targeted position.

The variable N is incremented by units of one and finally becomes “15”.At that point all of the photographic processes have been completed, thecircular glass table has been completely rotated around the object andall texture images and silhouette images from all angles have beenstored in the hard disc unit 63. The final total number of the textureimages is 32 (=16+8+4+4) and the final total number of the silhouetteimages also is 32 (=16+8+4+4).

After all photographing process repeatedly executed in the steps #124 to#139 have completed, the process goes to a step #142. In the step #142,the CPU 40 instructs to write a flag “0” in the front light control bitof the register in the lighting control unit 55. Accordingly an outputof the port of front lights #FL turns to the predetermined levelrepresenting “0” and the fluorescent lights 36 are turned off inaccordance with the table of the FIG. 12.

In a step #143, executing the three-dimensional object model creatingprogram 65, the CPU 40 creates three-dimensional geometry data of theobject by using all silhouette images stored in the hard disc unit 63.The three-dimensional geometry is defined by polygons, includingtriangles and four-cornered polygons. Detailed methods or processes forobtaining the three-dimensional geometry data by using silhouette imagestaken from different positions and orientations is disclosed in formerpatent applications, for example, U.S. Pat. No. 6,317,139, U.S. Pat. No.4,710,876, and a UK application number 0114157.1 (CRE235), and thesemethods or processes can be adopted to this step #143. Therefore, inthis specification, detailed descriptions of such methods and processesare omitted.

In the step #143, before creating three-dimensional geometry, parametersincluding photographing positions, orientations, and focal lengths foreach of digital cameras and each photographing are calibrated by usingthe obtained camera information, including the position, the orientationand the focal length of the digital cameras stored in the hard disc unit63 as files named “cal_cam#C” in the step #118.

In a step #144, in accordance with the three-dimensional object modelcreating program 65, the CPU 40 creates three-dimensional texture datato be put on surfaces of each polygons created in the step #143 by usingall texture images stored in the hard disc unit 63. Detailed methods orprocesses for obtaining the three-dimensional texture data for eachpolygon by using two-dimensional texture images taken from differentpositions and orientations is disclosed in former patent applications,for example, UK application number 0022343.4 (CRE223), and such methodsor processes can be adopted to this step #144. Therefore, in thisspecification, detailed descriptions of such concrete methods andprocesses are omitted. Thus, all information of three-dimensional objectincluding geometry and texture are finally obtained.

In a step #145, the resultant three-dimensional object having geometryon which texture images have been put is displayed on the display of thevideo monitor 41. As known, such resultant three-dimensional model canbe rotated, magnified or like by the user, using the keyboard 44 or themouse 45.

In a step #146, all information of such a resultant three-dimensionalobject including three-dimensional geometry information andthree-dimensional texture information to be put on the geometry isstored in the hard disc unit 63 as an ordinal VRML file (*.wrl), forexample. The process is completed after the step #146.

When the digital camera 24 located beneath the glass table 2 photographsthe object, normally the digital camera 24 picks up the light reflectedby the glass table 2. This reflected light obviously deterioratesquality of the resultant three-dimensional object. Especially, theexistence of the white-light diffuser plate 31 causes a significantproblem, namely that directly reflected light from the plate 31illuminates a lower surface on the glass table within a photographingarea of the digital camera 24. This reflected light illuminating thelower surface in the main deteriorates the contrast of texture images ofa bottom of the object.

To solve this, in this embodiment, the polarizing panel 33, which hasalmost the same size as the white-light diffuser plate 31, was putthereon and the polarizing filter 34 was set in front of a camera lensof the digital camera 24, which has a photographing area illuminated bythe directly reflected light from the white-light diffuser plate 31.Further the polarizing angle of the polarizing filter 34 is set atroughly a right angle with the polarizing panel 33. Accordingly thesystem of this embodiment can significantly reduce the inappropriateinfluence caused by the directly reflected light from the white-lightdiffuser plate 31 on the resultant three-dimensional object model.

In accordance with the embodiment described above, finally allinformation of such a resultant three-dimensional object is finallystored as the VRML file. However, it is possible to store by using othertypes of files.

In accordance with the embodiment described above, the fluorescentlights 36 are used as front lights. However, other types of lights suchas tungsten lights can be used. The white balance of the digital camerashas preferably, however, to be set so that colour temperature of theproduced image is appropriate.

Further, other types of lights, such as tungsten lights or fluorescentlights, can be used as backlights instead of the flashlights.

To make description more brief and concise, the embodiment describedabove only introduced two kind of image parameters, as shown in FIG. 10,for texture images using only front lights and silhouette images using abacklight. However, such parameters like an exposure value (AV) and ashutter speed (TV) are preferably set more precisely in considerationwith luminance value of each of the emitted lights, to effectivelyobtain high-quality texture images and silhouette images. It shall benoted that one aspect of this embodiment and one advantage of thisembodiment is to select the different exposure parameters betweentexture images and silhouette images. This provides significantimprovement in obtaining high-quality texture and silhouette images.

The location of cameras and focal lengths of each of camera lens areconsidered and are decided in accordance with several factors, includingthe size of the object, distance between the object and backlight, andthe size of the backlight, so that the outline of the object issurrounded by the backlight.

In accordance with the embodiment described above, a plurality ofdigital cameras are prepared for each vertical (latitudinal) location.However, it would also be possible to move one digital camera so as tolocate it at a plurality of latitudinal locations by using a movingmechanism. If the moving mechanism accurately locates the digital cameraat each latitudinal location, such a system may give a cheaper solutionthan this embodiment. This aspect of this embodiment is therefore not inhow many cameras are used but rather the existence of a plurality oflatitudinal locations where the camera photographs the object.Therefore, it shall be understood that obtaining a plurality oflatitudinal locations for photographing by moving the digital camera iswithin the scope of this invention.

FIG. 13 shows another embodiment of the system according to thisinvention. This embodiment introduces fine nylon fibers roped off on aplane on which the object is put instead of the glass table. In FIG. 13,the reference 67 shows a rotating table made of metal such as aluminum.The table 67 has a hole where fine nylon fibers 69 are secured.

The material of the nylon fibers is selected so that fibers can be madesufficiently fine enough to be unnoticeable or invisible from thedigital cameras. The number of fibers is decided in accordance with sizeand weight of the object. The size of the hole is decided so as to causeno obstacle to the creation of silhouette images taken by all digitalcameras.

By this embodiment shown in FIG. 13, it becomes possible to float theobject in air substantially without visible materials. In comparisonwith the former embodiment, this embodiment shown in FIG. 13 has anadvantage in avoiding the inappropriate influence of the reflectedlights without using other elements like a polarizing panel, apolarizing filter 34 and so on.

These embodiments described above have many advantages in comparisonwith the prior technology for creating three-dimensional object model,as follows.

First of all, the above-described embodiments make it possible tominimize the number of photographs while keeping the quality ofresultant three-dimensional object model, by decreasing a number ofphotographs from latitudinal relative positions further from the lateralposition. This greatly contributes to a reduction in the total number ofphotographs and total time for photographing.

Further, in accordance with the above-described embodiments, since aplurality of photographs at the same longitudinal photographing positionare continuously conducted from one or more different latitudinalphotographing positions, the time needed for changing relativelatitudinal and longitudinal positions between the object and the camerais minimized. Especially, as a plurality of cameras are provided atdifferent latitudinal positions, as shown in the above-describedembodiments, the time needed for photographing is greatly reduced.Further, by continuously photographing the object under differentlighting conditions for silhouette and texture images, the quality ofthe resultant three-dimensional object models is greatly improvedwithout significantly increasing photographing time.

Further, to put the object on a material, which is at least partiallytransparent, so that the object looks to be substantially floating inair and to photograph the object from a plurality of angles including anangle below the table as explained in the embodiments, it becomespossible to take silhouette images from the bottom of the object andtexture images of the bottom of the object without manually changing thedirection or orientation of the object. This also greatly contributes tothe creation of the resultant three-dimensional object, which is visiblefrom all orientation without relying on manual user operations orincreasing the time needed for those manual user operations.

Further, by changing latitudinal photographing positions, at least alatitudinal photographing position close to the lateral angles, inaccordance with a size of the object, it becomes possible to alwaysobtain a high quality three-dimensional object model irrespective of asize of the object without increasing a number of photographs.

As described above, in this specification, although only two embodimentshave been disclosed, it is possible to replace some of particularelements with alternative elements and remain within the scope of thepresent invention. A couple of such alternative elements are disclosedas follows.

In the above-described embodiments, an element on which an object to bemodeled locates is composed of a glass table or fine transparent fiberssecured on the plate. A method or elements for making the object shownin all orientation shall not be limited into the glass table or finetransparent fibers. For example, it is possible to replace these with atransparent fiber hanging the object, a transparent needle-shaped resinpiercing the object, or a transparent stool on which the object is set.

Further, in the above-described embodiments, a plurality of digitalcameras are prepared and set at different positions for photographingthe object from a plurality of different orientations. This structuremay be replaced with a structure, which guides and moves one digitalcamera so that the digital camera, revolving it around the object. Ifsuch a structure utilising a single camera is adopted, the camera ismoved to locate it at one or more positions for every angle at which theobject is rotated and photographs taken from each position.

Further, in the above-described embodiments, although photographs underdifferent lighting conditions are taken for silhouette and textureimages, it is not essential to separately photograph the silhouette andtexture images. Namely, the present invention can be applied to anapparatus, a method and device, photographing once for both silhouetteand texture images wherein the silhouette images are obtained byremoving the background by using the choroma-key technique. Evenapplying such apparatus, method and device, as it can be seen, theadvantage of the present invention of reducing the number of photographsand time similarly exists. Therefore it shall be understood that anapparatus, a method and a device adopting such a structure is with ascope of the present invention.

Further, in the above-described embodiments, longitudinal relativepositions, namely rotating positions of the table, are commonly used forseveral latitudinal positions of a camera and photographs for silhouetteand texture images. However, these conditions are not essential for thepresent invention and, for example, all longitudinal positions can bedifferent for each photographing at different latitudinal positions andcan be different between silhouette and texture images.

Furthermore, in the above-described embodiments, automatic photographingis carried out by rotating a table and setting it at a plurality ofpredetermined angles and it is described as a fully automaticphotographing apparatus. However, even it the table is manually orpart-manually rotated, it is accomplished that the number of photographsis reduced. Therefore, such a structure that the table is manuallyrotated is also adopted in the scope of the present invention.

As described above, according to one aspect of the present invention, itbecomes possible to minimize a number of photographs and to reduce timefor photographing without deteriorating the quality of the resultantthree-dimensional object model, by differentiating a number ofphotographs taken from different relative longitudinal positions betweenthe object and the photographing position, especially by making a largernumber of photographs from a relative latitudinal position closer to alateral position than other relative latitudinal positions.

Further, according to another aspect of the present invention, itbecomes possible to reduce necessary time for relatively changingpositions of the object and the photographing position by taking aplurality of photographs at a plurality of different relativelatitudinal positions while keeping a relative longitudinal positionbetween the object and the photographing position. Accordingly the totaltime needed for photographing the necessary images for creating athree-dimensional object model is shorter. Especially, by taking aplurality of photographs for creating both silhouette and texture imagesunder different lighting conditions while keeping the relativelongitudinal position between the object and the photographing position,total photographing time is further reduced.

Further, it becomes possible to obtain a high quality three-dimensionalobject model irrespective of a size of the object without increasing thenumber of photographs, by selecting a relative latitudinal positionbetween the object and the photographing position in accordance with thesize of the object.

1. An apparatus for creating a three-dimensional object model,comprising: photographing means for photographing an object to bemodeled for obtaining images to be used for creating thethree-dimensional object model; setting means for longitudinally andlatitudinally setting a relative position between the object and saidphotographing means, said setting means being capable of setting theobject and said photographing means a plurality of different relativelongitudinal and latitudinal positions; and control means forcontrolling said photographing means and said setting means so that anumber of photographs taken from different relative longitudinalpositions at a first relative latitudinal position is larger than thattaken from different relative longitudinal positions at a secondrelative latitudinal position, with the first relative latitudinalposition being closer to a lateral position than the second relativelatitudinal position.
 2. An apparatus according to claim 1, furthercomprising lighting means including front lighting means capable oflighting a front side of the object confronting a photographing positionof said photographing means and back lighting means capable of lightinga back side of the object hidden from the photographing position of saidphotographing means, wherein said control means controls saidphotographing means and said back lighting means so that said backlighting means operates in a first mode when said photographing meansphotographs for obtaining silhouette images but in a second mode whensaid photographing means photographs for obtaining texture images.
 3. Anapparatus according to claim 1, wherein said setting means includespositioning means for positioning the object on the plane as a mannerputting the object so as to be shown in any direction.
 4. An apparatusaccording to claim 3, wherein said setting means sets the object andsaid photographing means at a third relative latitudinal position wheresaid photographing means locates below the object and said control meanscontrols said photographing means and said setting means so that anumber of photographs taken from different relative longitudinalpositions at the first relative latitudinal position is larger than thattaken from different relative longitudinal positions at the thirdrelative latitudinal position.
 5. An apparatus according to claim 1,wherein said setting means is capable of selecting the first relativelatitudinal position in accordance with a size of the object.
 6. Anapparatus according to claim 1, wherein said setting means includespositioning means for positioning the object on a horizontal plane wherethe object is set and rotating means for rotating the horizontal plane.7. An apparatus according to claim 6, wherein said control means furthercontrols said rotating means so as to set the object and saidphotographing means at a plurality of different longitudinalorientations.
 8. An apparatus according to claim 7, wherein said controlmeans controls said rotating means and said photographing means so thatsaid photographing means continuously photographs the object at thefirst relative latitudinal position and the second relative latitudinalposition while said rotating means set the object at one of thelongitudinal orientations.
 9. A method for creating a three-dimensionalobject model, comprising steps of: photographing an object to be modeledfor obtaining images to be used for creating the three-dimensionalobject model, longitudinally and latitudinally setting a relativeposition between the object and a photographing position at a pluralityof different relative longitudinal and latitudinal positions; andcontrolling so that a number of photographs photographed from differentrelative longitudinal positions at a first relative latitudinal positionis larger than that photographed from different relative longitudinalpositions at a second relative latitudinal position, with the firstrelative latitudinal position being closer to a lateral position thanthe second relative latitudinal position.
 10. A method according toclaim 9, further comprising a step of changing a lighting conditionbetween a first mode in which the object is photographed for obtainingsilhouette images and a second mode in which the object is photographedfor obtaining texture images.
 11. A method according to claim 9, whereinthe object is positioned on a plane so as to be shown in any direction,the object and the photographing position are set at a third relativelatitudinal position where the photographing position locates below theobject, and a number of photographs photographed from different relativelongitudinal positions at the first relative latitudinal position islarger than that photographed from different relative longitudinalpositions at the third relative latitudinal position.
 12. A device forcreating a three-dimensional object model, comprising: one or morecameras for photographing an object to be modeled for obtaining imagesto be used for creating the three-dimensional object model; a positionchanger for longitudinally and latitudinally changing a relativeposition between the object and the camera to be used for photographing,the position changer being capable of setting the camera and the objectat a plurality of different relative longitudinal and latitudinalpositions; and a controller for controlling the camera and the positionchanger so that a number of photographs taken from different relativelongitudinal positions at a first relative latitudinal position islarger than that taken from different relative longitudinal positions ata second relative latitudinal position, the first relative latitudinalposition being closer to a lateral position than the second relativelatitudinal position.
 13. A device according to claim 12, furthercomprising a front light capable of lighting a front side of the objectconfronting the camera and a back light capable of lighting a back sideof the object hidden from the camera, wherein the controller controlsthe camera and the back light so that the back light operates in a firstmode when the camera photographs for obtaining silhouette images but ina second mode when the camera photographs for obtaining texture images.14. A device according to claim 12, wherein the object is set on ahorizontal plane as a manner putting the object so as to be shown in anydirection.
 15. A device according to claim 14, wherein the positionchanger sets the object and the camera at a third relative latitudinalposition where the camera locates below the object and the controllercontrols the camera and the position changer so that a number ofphotographs taken from different relative longitudinal positions at thefirst relative latitudinal position is larger than that taken fromdifferent relative longitudinal positions at the third relativelatitudinal position.